package leetcode.part1;

import org.junit.Test;

public class S8 {
    public int maxProfit(int[] prices) {
        int len=prices.length;
        int[][] dp=new int[len][2];
        // 第0行表示卖出股票获得收益，第1行表示买入股票,它们都表示当前资金情况
        dp[0][0]=0;
        dp[0][1]=-prices[0];
        for (int i = 1; i < len; i++) {
            dp[i][0]=Math.max(dp[i-1][0],dp[i-1][1]+prices[i]);
            dp[i][1]=Math.max(dp[i-1][1],dp[i-1][0]-prices[i]);
        }
        return dp[len-1][0];
    }
    @Test
    public void test(){
        int[] prices={7,1,5,3,6,4};
        int maxProfit = maxProfit(prices);
        System.out.println(maxProfit);

    }
}
